Enable Glint by Default#976
Conversation
|
|
||
| There are some potential drawbacks to adopting Glint: | ||
|
|
||
| **Learning Curve:** Developers who are not familiar with TypeScript may face a learning curve when integrating Glint into their Ember projects. |
There was a problem hiding this comment.
counter point, in VSCode, TS is already enabled in JS by default in JS projects, so Developers may already be used to TS-aware JS projects, and would be less productive without the tsawareness
There was a problem hiding this comment.
We should definitely make sure that just adding Glint doesn't do anything unexpected in the editor or linting that requires additional immediate input. That should continue to remain purely opt-in beyond that point.
|
|
||
| We should verify that there are no redundancies between the Glint Language Server and the Ember Language Server used in IDEs. If there is, we should answer the following questions: | ||
|
|
||
| Should Glint Language Server features be merged into the Ember Language Server? Alternatively, should we remove the redundancy between them but keep them separate? |
There was a problem hiding this comment.
I do think it would be good to have only one language server to install.
There was a problem hiding this comment.
Is there any overlap? If not, there's still benefit in merging, but it does become a somewhat tangential concern.
|
|
||
| In the opinion of the authors of this RFC, the benefit of Glint outweighs the downsides of requiring the boilerplate. | ||
|
|
||
| Additionally, `.gts` is not supported for route templates by default, so that issue would need to be resolved, delaying the Glint recommendation further. |
There was a problem hiding this comment.
a note for readers, you can use gts in route templates via: https://github.com/discourse/ember-route-template
example:
|
I'm curious, how does this play with a project that's not using TS at all yet? |
|
|
||
| This RFC proposes adopting Glint as a default/recommended tool in the Ember.js framework. Glint is a static TypeScript-based template type checker that aims to improve developer experience and catch template-related errors at build time. By incorporating Glint into Ember.js, we can enhance type safety, provide better tooling, and encourage best practices when working with templates. | ||
|
|
||
| Adopting Glint as a default/recommended tool in Ember.js is a step towards improving developer experience, reducing errors, and promoting best practices in Ember.js template development. By integrating Glint and providing guidance, Ember.js can stay at the forefront of modern web development practices. |
There was a problem hiding this comment.
This sentence seems like a clear duplicate of the previous sentence and does not seem necessary.
-
This sentence: "is a step towards improving developer experience"
- Previous sentence: "that aims to improve developer experience"
-
This sentence: "reducing errors"
- Previous sentence: "catch template-related errors"
-
This sentence: "promoting best practices"
- Previous sentence: "encourage best practices when working with templates"
|
|
||
| Currently, we recommend Glint users enable the Glint Language Server in their IDE and disable the TypeScript Language Server to avoid duplicate errors. The Glint Language Server does not, however, currently have full feature parity with the TypeScript Language Server, so in doing so, users are losing some language server features. There is [work in progress](https://github.com/typed-ember/glint/issues/626) to rectify this issue. | ||
|
|
||
| ### Should we require that GTS is recommended before we recommend Glint? |
There was a problem hiding this comment.
If enabling Glint, requires no further out-of-the-box changes and doesn't introduce new surprising warnings, then this doesn't really seem to be necessary.
Co-authored-by: MrChocolatine <47531779+MrChocolatine@users.noreply.github.com>
|
Ed: Feels like a design gap that users won't get the experience unless they have the correct editor support. If we did that, this becomes an implementation detail of the language server. If you have a JS project with TS dependencies the built-in TS language server gives good behavior. If we want to provide something similar for templates, it shouldn't need changes in the project. Runspired: How much does this RFC change when we shift to Glint using Volar as a strategy? |
|
Giving all users, even non-TS apps, better feedback is a good goal here. But my question is why that should involve adding anything to the blueprint. By analogy with typescript, you get typescript-derived feedback in VSCode even when your project has no tsconfig or typescript dependencies. Could our language server not be similar? So long as all our packages contain type declarations, it seems like it would work without exposing any extra complexity to users. |
|
With Glint v2 around the corner now might be a good time to revisit this. |
|
An update here -- the glint codebase works with all projects now, and I think without issue. caveat: hbs is not supported |
Glint v2 has shipped since this RFC was drafted, replacing the v1 environment/registry architecture with a Volar-based tsserver-plugin that targets template-tag (.gts/.gjs) files only. Refresh the RFC accordingly: - Detailed design: name the v2 packages (@glint/ember-tsc, @glint/tsserver-plugin, @glint/template), describe the JS path (jsconfig.json, IDE-only) and the TS path (tsconfig.json, ember-tsc --noEmit lint:types), and call out the typescript peer requirement. - Terminology: replace the v1 environment-ember-loose registry example with template-tag, the only authoring path Glint v2 supports. - Drawbacks: drop the "Registries Boilerplate" drawback (no longer applies under v2) and replace with two real drawbacks: template-tag is required for type-checking, and JS-only projects pay the TypeScript install footprint. - Unresolved questions: keep all four questions verbatim, but annotate the first three as resolved by Glint v2's architecture. Only "Should we include JSDoc types in the JS blueprints?" remains open. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Since Glint now works in JS projects without any special config / dependencies, we're putting this RFC in FCP-to-close. It is still worth finishing and updating the blog post, and guides updates for the current state of things, but primarily:
|
Adds a skill to summarize relevant framework updates from the last 7 days. It looks at releases, RSS feeds, blogs and GitHub discussions. The skill includes some scripts that take care of data fetching (the deterministic parts). The collected data is then brought to the skill, which handles checking for relevance (the non-deterministic parts). Linear Reference: https://linear.app/getsentry/issue/JSSDK-5/add-claude-skill-to-github-action ## Folder structure ``` - `.agents/skills/track-framework-updates/` - `SKILL.md` # skill entrypoint - `sources.json` # the link list: framework -> @sentry/* package + source URLs - `scripts/` - `_common.py` # shared helpers (date window, sources loader, gh REST/GraphQL) - `fetch_releases.py` # GitHub releases in the window (gh api REST) - `fetch_discussions.py` # recent Discussions (GraphQL) + RFC-repo PRs - `fetch_rss.py` # blog/changelog RSS items - `collect_updates.py` # orchestrator: runs all fetchers, merges, writes raw JSON - `assets/` - `digest-template.md` # Markdown layout Claude fills for the human-readable digest ``` ## Mermaid Flowchart ```mermaid flowchart LR sources["sources.json"] --> collect["collect_updates.py"] collect --> releases["fetch_releases.py\n(gh api REST)"] collect --> discussions["fetch_discussions.py\n(gh api GraphQL)"] collect --> rss["fetch_rss.py\n(stdlib RSS/Atom)"] releases --> raw["framework-updates-raw.json"] discussions --> raw rss --> raw raw --> claude["Claude\n(assess relevance)"] claude --> json["digest.json"] claude --> md["digest.md"] ``` <details> <summary><h2>Example Summary (v1)</ h2></summary> # Framework Updates Digest — week of 2026-06-08 _Window: last 7 days · generated 2026-06-08T09:36:33Z_ > Upstream activity for the frameworks the Sentry JS SDK instruments. Releases are > assessed for impact on our `@sentry/*` packages; discussions/RFCs/blog posts are > linked, not summarized. ## TL;DR - **Angular 22.0.0** (major) shipped, bundling TypeScript 6 — verify `@sentry/angular` support matrix. - **SvelteKit 3.0.0-next.0** prereleases landed: `$app/env` module rename, adapters moving to `rolldown`, TS 6 minimum, `query.live` now over SSE. - **Nuxt** shipped **security hotfix** releases on both lines (`4.4.7` and `3.21.7`). - **Next.js 16.3** canaries deprecate undocumented custom server methods and add staged App Shell rendering + adapter `cacheHandler` tracing. - **React Router** discussions reference **CVE-2026-42342** and a proposed public route/config loading API relevant to routing instrumentation. - **TanStack Start** has an open discussion on the state of OpenTelemetry auto-instrumentation — directly relevant to our tracing. ## Backlog candidates - **[@sentry/angular]** Angular 22.0.0 is out (major, bundles TypeScript 6) → verify peerDependency ranges, the E2E/test matrix, and that Router + ErrorHandler instrumentation still works on v22. ([v22 release](https://github.com/angular/angular/releases/tag/v22.0.0), [announcement](https://blog.angular.dev/announcing-angular-v22-c52bb83a4664)) - **[@sentry/sveltekit]** SvelteKit 3.0.0-next prereleases introduce breaking changes — `$app/env` module rename (with `$app/environment` reinstated as an alias), adapters migrating rollup→rolldown, TS 6 minimum, and `query.live` moving to SSE → assess SDK compatibility early since the major is forming now. ([kit 3.0.0-next.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%403.0.0-next.0), [next.1](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%403.0.0-next.1), [adapter-node 6](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/adapter-node%406.0.0-next.0)) - **[@sentry/nuxt]** Nuxt published **security hotfix** releases on both maintained lines (4.4.7, 3.21.7) → review advisories, confirm `@sentry/nuxt` compatibility, bump the E2E matrix. A user already reports a Cloudflare deploy regression after 4.4.7. ([v4.4.7](https://github.com/nuxt/nuxt/releases/tag/v4.4.7), [v3.21.7](https://github.com/nuxt/nuxt/releases/tag/v3.21.7), [advisories](https://github.com/nuxt/nuxt/security/advisories)) - **[@sentry/nextjs]** Next.js 16.3 canaries deprecate undocumented custom server methods, add staged App Shell rendering in cached navs/builds, and trace `cacheHandler(s)` when using adapters → verify our server wrapping doesn't rely on the deprecated methods and check whether staged App Shell rendering shifts pageload/navigation span boundaries. ([canary.40](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.40), [canary.41](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.41), [canary.44](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.44)) - **[@sentry/react-router · @sentry/remix]** A react-router discussion references **CVE-2026-42342** → investigate whether it affects versions we support. Separately, the "Public route/config loading API for routing-aware tooling" proposal could give our routing instrumentation a stable API to read route config — worth tracking/engaging. ([CVE thread](remix-run/react-router#15156), [route/config API proposal](remix-run/react-router#15127)) - **[@sentry/tanstackstart-react]** Open TanStack Start discussion "State of OpenTelemetry auto instrumentation" is directly relevant to how we trace TanStack Start → follow and possibly engage to align with our instrumentation. ([discussion](TanStack/router#7546)) - **[@sentry/nestjs]** _(low confidence)_ NestJS 11.1.25 includes "fix(core): register SSE close listener before async setup" → investigate whether it interacts with our Nest SSE/request span handling. ([v11.1.25](https://github.com/nestjs/nest/releases/tag/v11.1.25)) ## Client-Side ### Angular (@sentry/angular) **Releases** - [v22.0.0](https://github.com/angular/angular/releases/tag/v22.0.0) — major release; bundles TypeScript 6. Verify SDK support matrix and instrumentation. - [v22.0.0-rc.3](https://github.com/angular/angular/releases/tag/v22.0.0-rc.3) — final RC before v22; no separate SDK impact. - [v21.2.16](https://github.com/angular/angular/releases/tag/v21.2.16) — patch (common/compiler); no SDK impact expected. - [v20.3.24](https://github.com/angular/angular/releases/tag/v20.3.24) — patch (platform-server); no SDK impact expected. - [v19.2.25](https://github.com/angular/angular/releases/tag/v19.2.25) — patch (platform-server); no SDK impact expected. **Interesting links** - Announcing Angular v22 — https://blog.angular.dev/announcing-angular-v22-c52bb83a4664 - Angular in 2026: Mid-Year Reality Check, Signals, and AI Code Quality — https://blog.angular.dev/angular-in-2026-mid-year-reality-check-signals-and-ai-code-quality-ff37df480574 ### React (@sentry/react) **Releases** - [v19.2.7](https://github.com/facebook/react/releases/tag/v19.2.7) / [v19.1.8](https://github.com/facebook/react/releases/tag/v19.1.8) / [v19.0.7](https://github.com/facebook/react/releases/tag/v19.0.7) — patch backports fixing missing FormData entries in Server Actions; no SDK impact expected. ### Vue (@sentry/vue) **Releases** - [v3.6.0-beta.14](https://github.com/vuejs/core/releases/tag/v3.6.0-beta.14) — pre-release of upcoming 3.6 minor; watch, no action yet. ### Svelte (@sentry/svelte) **Releases** - [svelte@5.56.3](https://github.com/sveltejs/svelte/releases/tag/svelte%405.56.3) — "ignore errors that occur in destroyed effects" (internal error handling); low SDK impact, noted for error-capture edge cases. - [svelte@5.56.2](https://github.com/sveltejs/svelte/releases/tag/svelte%405.56.2) / [5.56.1](https://github.com/sveltejs/svelte/releases/tag/svelte%405.56.1) — patch fixes; no SDK impact expected. **Interesting links** - Ideas: Refactor hydration markers (data-attributes instead of comments) — sveltejs/svelte#18401 ### Ember (@sentry/ember) **Interesting links** - RFC: Advance 'Deprecate `import Ember from "ember"`' to Recommended — emberjs/rfcs#1110 - RFC: Deprecating Mixin Support (advance to Ready for Release) — emberjs/rfcs#1143 - RFC: Enable Glint by Default — emberjs/rfcs#976 - RFC: First-Class Component Templates (advance to Recommended) — emberjs/rfcs#1059 ## Server-Side ### Hono (@sentry/hono) **Interesting links** - Q&A: Why does `c.req.json()` return `any` instead of `unknown`? — https://github.com/orgs/honojs/discussions/4979 ### Nitro (@sentry/nitro) **Releases** - [v3.0.260603-beta](https://github.com/nitrojs/nitro/releases/tag/v3.0.260603-beta) — Nitro 3 beta: custom framework preview/deploy commands and `defaultPreset`. Preset/runtime changes can affect `@sentry/nuxt` + `@sentry/nitro` server setup; keep tracking the v3 beta line. ### NestJS (@sentry/nestjs) **Releases** - [v11.1.25](https://github.com/nestjs/nest/releases/tag/v11.1.25) — SSE close-listener ordering, microservices Redis close handling, fastify path slash. Low-confidence interaction with our SSE/request instrumentation — worth a quick check (see backlog). ### Effect (@sentry/effect) **Releases** - [effect@3.21.3](https://github.com/Effect-TS/effect/releases/tag/effect%403.21.3) — core patch; no SDK impact expected. - [@effect/ai@0.36.0](https://github.com/Effect-TS/effect/releases/tag/%40effect/ai%400.36.0) — minor on the AI packages (plus provider bumps). Relevant only if we extend AI instrumentation to Effect's AI layer later; no action now. ## Meta-Framework ### Next.js (@sentry/nextjs) **Releases** - [v16.3.0-canary.44](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.44) — client hook prerender abort reasons + Turbopack eviction; watch prerender/abort handling vs our spans. - [v16.3.0-canary.41](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.41) — staged App Shell rendering in cached navs/builds; may shift pageload/navigation span boundaries. - [v16.3.0-canary.40](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.40) — deprecates undocumented custom server methods; traces `cacheHandler(s)` with adapters — verify our server wrapping is unaffected. - [v16.2.7](https://github.com/vercel/next.js/releases/tag/v16.2.7) / [v15.5.19](https://github.com/vercel/next.js/releases/tag/v15.5.19) — stable backports (docs + FormData fix); no SDK impact expected. **Interesting links** - Help: `router.push()` does not work on SSG pages loaded with existing searchParams — vercel/next.js#94530 - Help: Next.js 16 + Azure/IIS — client-side navigation blank page, SSR pages return... — vercel/next.js#94455 ### Nuxt (@sentry/nuxt) **Releases** - [v4.4.7](https://github.com/nuxt/nuxt/releases/tag/v4.4.7) — **security hotfix**; review advisories and SDK compatibility. - [v3.21.7](https://github.com/nuxt/nuxt/releases/tag/v3.21.7) — **security hotfix** on the 3.x line; review advisories and SDK compatibility. **Interesting links** - Questions: Deployment fails on Cloudflare after Nuxt 4.4.7 upgrade — nuxt/nuxt#35282 ### SvelteKit (@sentry/sveltekit) **Releases** - [@sveltejs/kit@3.0.0-next.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%403.0.0-next.0) — SvelteKit 3 prerelease begins: TypeScript 6 minimum. **Major** — assess SDK compatibility. - [@sveltejs/kit@3.0.0-next.1](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%403.0.0-next.1) — reinstates `$app/environment` as an alias for `$app/env` — confirms an env-module rename our SDK may import. - [@sveltejs/kit@2.63.1](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%402.63.1) — `query.live` now uses SSE; check our request/streaming instrumentation on 2.x. - [@sveltejs/kit@2.63.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%402.63.0) — minor: explicit env vars; low SDK impact. - [@sveltejs/adapter-node@6.0.0-next.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/adapter-node%406.0.0-next.0) — adapter majors migrating rollup→rolldown (also vercel/netlify/cloudflare/static/auto); watch for build/sourcemap impact. **Interesting links** - Announcements: Remote Functions — sveltejs/kit#13897 - Ideas: Config-based routing mode — sveltejs/kit#15973 ### React Router / Remix (@sentry/react-router · @sentry/remix) **Releases** - [react-router@7.17.0](https://github.com/remix-run/react-router/releases/tag/react-router%407.17.0) — minor release; review changelog for routing/loader changes affecting instrumentation. **Interesting links** - General: CVE-2026-42342? — remix-run/react-router#15156 - Proposals: Public route/config loading API for routing-aware tooling — remix-run/react-router#15127 - Q&A: throw or return Error Response from loaders? — remix-run/react-router#14822 ### Astro (@sentry/astro) **Releases** - [astro@6.4.4](https://github.com/withastro/astro/releases/tag/astro%406.4.4) — patch; no SDK impact expected. - [@astrojs/node@10.1.3](https://github.com/withastro/astro/releases/tag/%40astrojs/node%4010.1.3) — static file handler clean-URL fix; low SDK impact. (Plus several adapter/integration patch bumps.) ### TanStack Start (@sentry/tanstackstart · @sentry/tanstackstart-react) **Releases** - High-frequency patch/dependency churn across the Start packages this week (e.g. [@tanstack/start-client-core@1.170.12](https://github.com/TanStack/router/releases/tag/%40tanstack/start-client-core%401.170.12)); no single breaking change spotted — no SDK impact expected. **Interesting links** - General: State of OpenTelemetry auto instrumentation — TanStack/router#7546 - General: Websocket support in TanStack Start — TanStack/router#4576 - Ideas: Auto-generating OpenAPI from server routes — TanStack/router#7530 --- _No notable upstream activity this week for: Solid, SolidStart, Gatsby, Elysia._ </details> <details> <summary><h2>Example Summary (v2)</ h2></summary> # Framework Updates Digest — week of 2026-06-08 _Window: last 7 days · generated 2026-06-08T11:30:00Z_ ## TL;DR - Angular 22.0.0 released with new primitives (`injectAsync`, signal debouncing, SSR resource caching, `ChangeDetectionStrategy.Eager`) - SvelteKit 3.0.0-next.0 published with many breaking changes (Vite 8, Node 22+, removed polyfills, new cookie defaults) - Next.js canaries introduce App Shells staged rendering and enable Node streams by default - TanStack Start deprecates `inputValidator()` in favor of new `validator()` API for server functions/middleware - Nuxt 4.4.7 / 3.21.7 security hotfix changes route rule matching to case-insensitive ## Backlog candidates - **[@sentry/angular]** Angular 22 introduces `injectAsync`, `provideWebMcpTools`, `ChangeDetectionStrategy.Eager`, signal debouncing, and SSR resource caching → Investigate whether these new APIs need instrumentation or affect existing hooks. ([v22.0.0](https://github.com/angular/angular/releases/tag/v22.0.0)) - **[@sentry/sveltekit]** SvelteKit 3.0.0-next.0 removes `@sveltejs/kit/node/polyfills`, requires Vite 8/Node 22+, removes deprecated CSRF `checkOrigin`, changes cookie path default → Start planning `@sentry/sveltekit` migration for v3 compatibility. ([@sveltejs/kit@3.0.0-next.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%403.0.0-next.0)) - **[@sentry/nextjs]** Next.js canaries introduce App Shells (staged rendering) and enable Node streams by default → Investigate impact on SDK streaming/SSR instrumentation. ([canary.40](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.40), [canary.38](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.38)) - **[@sentry/nextjs]** Next.js canary.40 deprecates undocumented custom server methods → Verify SDK doesn't rely on any of them. ([canary.40](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.40)) - **[@sentry/tanstackstart]** TanStack Start deprecates `inputValidator()` for `validator()` in server functions and middleware → Check if SDK wraps or references this API. ([#7566](TanStack/router#7566)) - **[@sentry/sveltekit]** SvelteKit 2.62.0 catches load function streaming errors on the client → Verify SDK error capture integrates with the new error path. ([@sveltejs/kit@2.62.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%402.62.0)) - **[@sentry/nuxt]** Nuxt 4.4.7/3.21.7 changed route rule matching to case-insensitive (mirroring vue-router) → Verify SDK route parameterization handles this correctly. ([v4.4.7](https://github.com/nuxt/nuxt/releases/tag/v4.4.7)) ## Client-Side ### Angular (@sentry/angular) **Releases** - [v22.0.0](https://github.com/angular/angular/releases/tag/v22.0.0) — **Major release.** New `injectAsync`, `provideWebMcpTools`, `ChangeDetectionStrategy.Eager`, signal debouncing, SSR resource caching. Many new instrumentation-relevant primitives. - [v21.2.16](https://github.com/angular/angular/releases/tag/v21.2.16) — Security hardening in platform-server; no SDK impact expected. - [v20.3.24](https://github.com/angular/angular/releases/tag/v20.3.24) — Security hardening in platform-server; no SDK impact expected. - [v19.2.25](https://github.com/angular/angular/releases/tag/v19.2.25) — Security hardening in platform-server; no SDK impact expected. **Interesting links** - [Announcing Angular v22](https://blog.angular.dev/announcing-angular-v22-c52bb83a4664) (blog) ### React (@sentry/react) **Releases** - [v19.2.7](https://github.com/facebook/react/releases/tag/v19.2.7) — Fix missing FormData entries in Server Actions (regression); no SDK impact expected. - [v19.1.8](https://github.com/facebook/react/releases/tag/v19.1.8) — Same FormData fix backported to 19.1. - [v19.0.7](https://github.com/facebook/react/releases/tag/v19.0.7) — Same FormData fix backported to 19.0. ### Vue (@sentry/vue) **Releases** - [v3.6.0-beta.14](https://github.com/vuejs/core/releases/tag/v3.6.0-beta.14) — Prerelease; no changelog details. Vue 3.6 beta continues development. ### Svelte (@sentry/svelte) **Releases** - [svelte@5.56.3](https://github.com/sveltejs/svelte/releases/tag/svelte%405.56.3) — Ignore errors in destroyed effects; no SDK impact expected. - [svelte@5.56.2](https://github.com/sveltejs/svelte/releases/tag/svelte%405.56.2) — Fixes for async effect end node tracking and async derived rejection. Touches async rendering internals. - [svelte@5.56.1](https://github.com/sveltejs/svelte/releases/tag/svelte%405.56.1) — Declaration tag parsing fixes; no SDK impact expected. **Interesting links** - [Refactor hydration markers: Use data-attributes instead of comment nodes](sveltejs/svelte#18401) (discussion — could affect SDK DOM instrumentation if adopted) ## Server-Side ### Hono (@sentry/hono) **Releases** - [v4.12.24](https://github.com/honojs/hono/releases/tag/v4.12.24) — Bug fixes (bearer-auth, ipaddr, config cleanup); no SDK impact expected. ### Nitro (@sentry/nitro) **Releases** - [v3.0.260603-beta](https://github.com/nitrojs/nitro/releases/tag/v3.0.260603-beta) — Custom framework preview/deploy commands, `defaultPreset` config option. Build/deploy surface extensions. ### NestJS (@sentry/nestjs) **Releases** - [v11.1.25](https://github.com/nestjs/nest/releases/tag/v11.1.25) — Redis request rejection on close, SSE listener fix, Fastify pathname fix; no SDK impact expected. ### Effect (@sentry/effect) **Releases** - [effect@3.21.3](https://github.com/Effect-TS/effect/releases/tag/effect%403.21.3) — Type inference fix for `$match`, schema refinement; no SDK impact expected. - [@effect/ai@0.36.0](https://github.com/Effect-TS/effect/releases/tag/%40effect/ai%400.36.0) — Support `Tool.EmptyParams`; no SDK impact expected. ## Meta-Framework ### Next.js (@sentry/nextjs) **Releases** - [v16.2.7](https://github.com/vercel/next.js/releases/tag/v16.2.7) — Stable backport: middleware rewrite loop fix, "type: module" standalone fix, FormData fix, hydration fix. - [v15.5.19](https://github.com/vercel/next.js/releases/tag/v15.5.19) — Stable backport: FormData fix only. - [v16.3.0-canary.40](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.40) — **Deprecates custom server methods. App Shells in runtime prefetches.** High-signal canary. - [v16.3.0-canary.38](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.38) — **Enables Node streams by default.** Changes SSR streaming behavior. - [v16.3.0-canary.37](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.37) — `await instrumentation in RouteModule.prepare` — directly relevant to instrumentation hooks. ### Nuxt (@sentry/nuxt) **Releases** - [v4.4.7](https://github.com/nuxt/nuxt/releases/tag/v4.4.7) — **Security hotfix.** Route rules now match case-insensitively. Navigation guards hardened (`navigateTo`, `reloadNuxtApp`, `NuxtLink`). `getCachedData` re-run after initial fetch. - [v3.21.7](https://github.com/nuxt/nuxt/releases/tag/v3.21.7) — Same security hotfix backported to 3.x. ### SvelteKit (@sentry/sveltekit) **Releases** - [@sveltejs/kit@3.0.0-next.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%403.0.0-next.0) — **Major prerelease.** Vite 8, Node 22+, Svelte 5.48+, many removed/changed APIs. Extensive breaking changes requiring SDK migration work. - [@sveltejs/kit@2.63.1](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%402.63.1) — SSE for `query.live`, env.d.ts Windows path fix. - [@sveltejs/kit@2.63.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%402.63.0) — Explicit env vars feature. - [@sveltejs/kit@2.62.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%402.62.0) — Config via Vite plugin, catch load function streaming errors on client. ### React Router / Remix (@sentry/react-router, @sentry/remix) **Releases** - [react-router@7.17.0](https://github.com/remix-run/react-router/releases/tag/react-router%407.17.0) — Minor release (changelog in external file). **Interesting links** - [Public route/config loading API for routing-aware tooling](remix-run/react-router#15127) (discussion — could enable better SDK route discovery) ### Astro (@sentry/astro) **Releases** - [astro@6.4.4](https://github.com/withastro/astro/releases/tag/astro%406.4.4) — Bug fixes: routePattern casing, i18n routing, invalid percent-sequences; no SDK impact expected. - [astro@6.4.3](https://github.com/withastro/astro/releases/tag/astro%406.4.3) — Fix advancedRouting + astro/hono handler for unmatched routes. ### TanStack Start (@sentry/tanstackstart, @sentry/tanstackstart-react) **Releases** - [release-2026-06-06-2144](https://github.com/TanStack/router/releases/tag/release-2026-06-06-2144) — **Adds `validator()` as canonical server function/middleware validator; deprecates `inputValidator()`.** Public API change. - [release-2026-06-06-0954](https://github.com/TanStack/router/releases/tag/release-2026-06-06-0954) — Skip scroll restoration when disabled; no SDK impact. - [release-2026-06-06-0850](https://github.com/TanStack/router/releases/tag/release-2026-06-06-0850) — Preserve route state for aliased HMR imports; allow retained search params to reset. **Interesting links** - [State of OpenTelemetry auto instrumentation](TanStack/router#7546) (discussion — directly relevant to SDK instrumentation strategy) </details> <details> <summary><h2>Example Summary (v2 with more RSS feeds)</ h2></summary> # Framework Updates Digest — week of Jun 3, 2026 _Window: last 7 days · generated 2026-06-10T15:10+02:00_ ## TL;DR - **Astro 7.0.0-beta.3** — Advanced routing enabled by default (`src/fetch.ts` replaces `src/app.ts`), `getFetchState()` now public, streaming rendering replaces queued rendering — `@sentry/astro` needs compatibility review. - **SvelteKit 3.0.0-next.0** — `delta` property removed from non-`popstate` navigation events (SDK hooks into this); Cloudflare adapter removes `platform.context` → `platform.ctx` — both are breaking for `@sentry/sveltekit` on SK3. - **Angular v22 announced** — major release, `@sentry/angular` needs compatibility audit. - **Next.js canary** — `catchError`/`retry` stabilised (dropping `unstable_` prefix), `export const prefetch` stable, new `cacheHandler` tracing hooks that could overlap with SDK instrumentation. - **Ember RFC "Router Helpers"** advancing to Ready for Release — verify no router API changes affect `@sentry/ember`. - **Hono v4.12.25 security release** — fixes Lambda@Edge header-dropping and AWS Lambda `Set-Cookie` merging; trace-context header extraction in those adapters now behaves correctly. - **TanStack Start** — community discussion "State of OpenTelemetry auto instrumentation" signals user demand for first-party OTel support. ## Backlog candidates - **[@sentry/astro]** Astro 7.0.0-beta.3 enables advanced routing by default, changing the server entrypoint to `src/fetch.ts` and exposing `getFetchState()` for Hono middleware → investigate whether server-side request isolation and trace propagation need updating for the new routing architecture. ([release](https://github.com/withastro/astro/releases/tag/astro%407.0.0-beta.3)) - **[@sentry/astro]** Astro 7 replaces queued rendering with a streaming pipeline (components flushed as encountered, no content cache) → verify error capture and trace propagation work correctly with the new flush order. ([release](https://github.com/withastro/astro/releases/tag/astro%407.0.0-beta.3)) - **[@sentry/sveltekit]** SvelteKit 3 removes `delta` from all navigation events except `popstate` → audit navigation instrumentation and add a guard before reading `event.delta`. ([release](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%403.0.0-next.0)) - **[@sentry/sveltekit]** SvelteKit Cloudflare adapter 8 removes `platform.context` in favour of `platform.ctx` → audit and update any Cloudflare request isolation code that reads `platform.context`. ([release](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/adapter-cloudflare%408.0.0-next.0)) - **[@sentry/angular]** Angular v22 released June 3 → audit v22 changelog for router, zone.js, or lifecycle-hook changes that could break `@sentry/angular` transaction creation or error capture. ([blog](https://blog.angular.dev/announcing-angular-v22-c52bb83a4664?source=rss----447683c3d9a3---4)) - **[@sentry/nextjs]** Next.js canary introduces tracing of `cacheHandler` and `cacheHandlers` when using adapters — framework-level cache telemetry → investigate integration or deduplication with SDK-generated cache spans. ([canary.40](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.40)) - **[@sentry/nextjs]** `catchError` and `retry` are being stabilised (removing `unstable_` prefix) as public error-handling APIs → evaluate whether SDK should instrument these for error capture. ([canary.47](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.47)) - **[@sentry/hono]** Hono v4.12.25 fixes Lambda@Edge repeated request headers being dropped (only last value survived previously) → verify SDK trace-context header extraction now works correctly in Lambda@Edge. ([release](https://github.com/honojs/hono/releases/tag/v4.12.25)) - **[@sentry/tanstackstart]** Community discussion "State of OpenTelemetry auto instrumentation" signals user demand for first-party OTel support → review whether `@sentry/tanstackstart` should expose OTel-compatible hooks. ([discussion](TanStack/router#7546)) - **[@sentry/ember]** RFC #391 "Router Helpers" advancing to Ready for Release → review for any router API changes that would affect `@sentry/ember` route transaction instrumentation. ([RFC](emberjs/rfcs#1199)) ## Client-Side ### Angular (`@sentry/angular`) **Releases** - [vsix-22.0.0](https://github.com/angular/angular/releases/tag/vsix-22.0.0) — VSCode language-service extension only (bundles TypeScript 6.0, template inlay hints). No Angular framework changes; no SDK impact expected. **Interesting links** - [Announcing Angular v22](https://blog.angular.dev/announcing-angular-v22-c52bb83a4664?source=rss----447683c3d9a3---4) — Major framework release. Angular v22 framework release occurred this week; check changelog for router/zone.js/lifecycle changes. - [Angular in 2026: Mid-Year Reality Check, Signals, and AI Code Quality](https://blog.angular.dev/angular-in-2026-mid-year-reality-check-signals-and-ai-code-quality-ff37df480574?source=rss----447683c3d9a3---4) ### Ember (`@sentry/ember`) No releases this week. **Interesting links** - [RFC #391 Router Helpers — Stage Ready for Release](emberjs/rfcs#1199) — RFC for first-class router helper utilities. Review for router API changes. - [RFC #1116 Deprecating Mixin Support — Stage Ready for Release](emberjs/rfcs#1143) — Mixins are a core Ember pattern; deprecation advancing could affect SDK instrumentation patterns long-term. - [RFC #507 v2 Addon Format (Embroider Compatibility) — Stage Recommended](emberjs/rfcs#1152) — module format changes; monitor for exports-map impact on SDK packaging. - [Deprecate Embroider@3](emberjs/rfcs#1187) ### Svelte (`@sentry/svelte`) **Releases** - [svelte@5.56.3](https://github.com/sveltejs/svelte/releases/tag/svelte%405.56.3) — Ignore errors in destroyed effects, type BigInt in `$state.snapshot`. Internal fixes only; no SDK impact expected. - [svelte@5.56.2](https://github.com/sveltejs/svelte/releases/tag/svelte%405.56.2) — Track effect end node for async sibling component, reject pending async deriveds on discard. Internal compiler/runtime fixes; no SDK impact expected. **Interesting links** - [Refactor hydration markers: Use data-attributes instead of comment nodes](sveltejs/svelte#18401) — If this lands it changes how Svelte marks hydration boundaries; could affect SDK hydration span detection. ### Vue (`@sentry/vue`) **Releases** - [v3.6.0-beta.14](https://github.com/vuejs/core/releases/tag/v3.6.0-beta.14) — Pre-release; no inline changelog. Monitor the `minor` branch CHANGELOG for router, compiler, or lifecycle changes relevant to `@sentry/vue`, especially Vapor mode. **Interesting links** - [Vue Vapor bundle size discussion](https://github.com/orgs/vuejs/discussions/14946) — Vapor is a new compilation mode; if it ships, SDK instrumentation of component lifecycle will need an update. ## Server-Side ### Effect (`@sentry/effect`) **Releases** - [effect@3.21.3 + sub-package patch/minor releases](https://github.com/Effect-TS/effect/releases/tag/effect%403.21.3) — TypeScript inference fixes, `Tool.EmptyParams` support in `@effect/ai`, shard group fixes in cluster. No SDK instrumentation surfaces changed. **Interesting links** - [This Week in Effect — 2026-06-05](https://effect.website/blog/this-week-in-effect/2026/06/05/) ### Hono (`@sentry/hono`) **Releases** - [v4.12.25](https://github.com/honojs/hono/releases/tag/v4.12.25) — Security release: - **medium**: Lambda@Edge adapter previously overwrote repeated request headers (e.g. `X-Forwarded-For`) — only the last value reached the app. SDK trace-context extraction was silently broken; this fix corrects it. - **medium**: AWS Lambda adapter previously joined multiple `Set-Cookie` response headers into one comma-separated value — response header shape now correct. - **low**: CORS wildcard credential reflection fix, body-limit bypass fix (AWS Lambda), serve-static path traversal fix (Windows). - [v4.12.24](https://github.com/honojs/hono/releases/tag/v4.12.24) — Refactoring and minor bug fixes; no SDK impact expected. ### NestJS (`@sentry/nestjs`) **Releases** - [v11.1.26](https://github.com/nestjs/nest/releases/tag/v11.1.26) — Fix SSE endpoint empty response. No SDK impact expected. - [v11.1.25](https://github.com/nestjs/nest/releases/tag/v11.1.25) — `platform-fastify` removes trailing pathname slash (changes route matching; SDK route span names in Fastify adapter may differ); SSE close listener ordering fix. ### Nitro (`@sentry/nitro`) **Releases** - [v3.0.260603-beta](https://github.com/nitrojs/nitro/releases/tag/v3.0.260603-beta) — New `defaultPreset` config option to customise the fallback deployment preset. Could represent an unrecognised deployment target; monitor for new adapters. ## Meta-Framework ### Astro (`@sentry/astro`) **Releases** - [astro@7.0.0-beta.3](https://github.com/withastro/astro/releases/tag/astro%407.0.0-beta.3) — Major pre-release: - **high**: Advanced routing enabled by default — `src/fetch.ts` replaces `src/app.ts` as the server entrypoint; request flow through SDK middleware hooks changes. - **high**: `getFetchState()` exposed from `astro/hono` as public API for Hono middleware to access per-request state — new instrumentation surface. - **high**: Removes `state.provide()`, `state.resolve()`, `state.finalizeAll()`, and `App.Providers` from the public advanced routing API. - **high**: Streaming rendering stabilised — components flushed as encountered, no content cache, no queue; changes rendering pipeline timing for error capture. - **medium**: Custom logger feature stabilised; `context.logger` always available in API routes. - [astro@7.0.0-alpha.2](https://github.com/withastro/astro/releases/tag/astro%407.0.0-alpha.2) — Removes deprecated `astro:transitions` lifecycle event constants and helpers (`TRANSITION_BEFORE_PREPARATION`, `isTransitionBeforePreparationEvent`, `createAnimationScope`, etc.) — SDK navigation tracing relying on these events must migrate to string event names. - [astro@6.4.5](https://github.com/withastro/astro/releases/tag/astro%406.4.5) — Fixes `Astro.request.url` not reflecting `X-Forwarded-Proto`/`X-Forwarded-Host` — corrects the request object the SDK reads for URL-based span attributes. - [astro@6.4.4](https://github.com/withastro/astro/releases/tag/astro%406.4.4) — i18n, `Astro.routePattern` casing, dynamic route fixes. No SDK API surface changes. - `@astrojs/cloudflare@13.7.0`, `@astrojs/mdx@6.0.x`, `@astrojs/markdown-satteri@0.x` — No SDK impact expected. ### Next.js (`@sentry/nextjs`) **Releases** - [v16.2.9 / v16.2.8](https://github.com/vercel/next.js/releases/tag/v16.2.9) — dist-tag fixes; no code changes. - [v16.3.0-canary.47](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.47): - **high**: Rename prefetch option `force-runtime` → `allow-runtime`. - **high**: Stabilise `export const prefetch` as a public routing API. - **high**: Stabilise `catchError` and `retry` (drop `unstable_` prefix) — new public error-handling APIs. - **medium**: Remove `unstable_instant` agent hints; stabilise `unstable_instant`. - [v16.3.0-canary.46](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.46): - **medium**: Remove `experimental.useNodeStreams` flag (streaming now always on). - [v16.3.0-canary.45](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.45): - **high**: Add global config to enable Partial Prefetching. - **medium**: Partial Prefetching defaults to App Shell only. - [v16.3.0-canary.40](https://github.com/vercel/next.js/releases/tag/v16.3.0-canary.40): - **high**: Trace `cacheHandler` and `cacheHandlers` when using adapters — framework telemetry for the data cache. - **high**: Deprecate undocumented custom server methods. **Interesting links** - [Next 16 App Router navigation hangs after _rsc completes with cacheComponents](vercel/next.js#94550) ### Nuxt (`@sentry/nuxt`) **Releases** - [v4.4.8](https://github.com/nuxt/nuxt/releases/tag/v4.4.8) / [v3.21.8](https://github.com/nuxt/nuxt/releases/tag/v3.21.8) — Hotfix for macOS Vite socket name, kit `findPath` type fix. No SDK impact expected. **Interesting links** - [Deployment fails on Cloudflare after Nuxt 4.4.7 upgrade](nuxt/nuxt#35282) — Cloudflare compatibility issue worth monitoring. - [Meet Nuxi](https://nuxt.com/blog/meet-nuxi) ### React Router / Remix (`@sentry/react-router`, `@sentry/remix`) **Releases** - [react-router@7.17.0](https://github.com/remix-run/react-router/releases/tag/react-router%407.17.0) — Minor release; changelog not inlined. Review the [CHANGELOG](https://github.com/remix-run/react-router/blob/main/CHANGELOG.md#v7170) for any router API changes. **Interesting links** - [CVE-2026-42342 — potential security vulnerability](remix-run/react-router#15156) — Monitor for a formal CVE or patch. ### SvelteKit (`@sentry/sveltekit`) **Releases** - [@sveltejs/kit@3.0.0-next.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%403.0.0-next.0) — Major pre-release: - **high**: Removes `delta` from all navigation events except `popstate` — SDK navigation span creation will break if it reads `event.delta`. - **high**: Requires `@sveltejs/vite-plugin-svelte` v7 and Vite 8 — build plugin major bumps. - **medium**: Upgrade to cookie v1 (ASCII-only names), remove `@sveltejs/kit/node/polyfills`, remove deprecated CSRF `checkOrigin`, deprecate `Response` helpers. - [@sveltejs/adapter-cloudflare@8.0.0-next.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/adapter-cloudflare%408.0.0-next.0): - **high**: Removes `platform.context` in favour of `platform.ctx` — breaks any SDK code that reads `platform.context` for Cloudflare request isolation. - **medium**: Upgrade to `@cloudflare/workers-types` 4.20260219.0, minimum wrangler `^4.67.0`. - [@sveltejs/adapter-vercel@7.0.0-next.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/adapter-vercel%407.0.0-next.0): - **medium**: Edge function bundling switches to rolldown, target `es2022` — may affect SDK edge bundle compatibility. - [@sveltejs/kit@2.64.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%402.64.0) — feat: allow commands to receive `File` objects; fix: server components not bundled when SSR is off per route. - [@sveltejs/kit@2.63.0](https://github.com/sveltejs/kit/releases/tag/%40sveltejs/kit%402.63.0) — feat: explicit env vars (`$app/env` module). **Interesting links** - [Config-based routing mode](sveltejs/kit#15973) — proposal for declarative routing mode, could change how the SDK creates route transactions. - [Remote Functions](sveltejs/kit#13897) — server RPC feature now in stable; monitor for SDK instrumentation opportunity. ### TanStack Start (`@sentry/tanstackstart`, `@sentry/tanstackstart-react`) **Releases** - [release-2026-06-06-2144](https://github.com/TanStack/router/releases/tag/release-2026-06-06-2144) — Adds `validator()` as canonical server function middleware validator, deprecates `inputValidator()`. Patch fixes: scroll restoration, search params. **Interesting links** - [State of OpenTelemetry auto instrumentation](TanStack/router#7546) — Community discussion about first-party OTel integration in TanStack Start. Directly relevant to SDK goals. - [Client-first with opt-in prerendering: Allow ssr: true per route when defaultSsr: false](TanStack/router#7321) — Per-route SSR opt-in proposal; could create mixed rendering modes the SDK must handle. </details>
Rendered
Implementation PRs
The RFC text in this PR has been refreshed to reflect Glint v2's architecture (no environments, template-tag only) and to mark three of the four "Unresolved questions" as resolved by v2.